(0) Obligation:

Clauses:

search_tree(void).
search_tree(T) :- search_tree(T, X1, X2).
search_tree(tree(X, void, void), X, X).
search_tree(tree(X, void, Right), X, Max) :- ','(search_tree(Right, Min, Max), less(X, Min)).
search_tree(tree(X, Left, void), Min, X) :- ','(search_tree(Left, Min, Max), less(Max, X)).
search_tree(tree(X, Left, Right), Min1, Max2) :- ','(search_tree(Left, Min1, Max1), ','(less(Max1, X), ','(search_tree(Right, Min2, Max2), less(X, Min2)))).
less(0, s(X3)).
less(s(X), s(Y)) :- less(X, Y).

Query: search_tree(g)

(1) PrologToPrologProblemTransformerProof (SOUND transformation)

Built Prolog problem from termination graph ICLP10.

(2) Obligation:

Clauses:

pA(T18, X50, X51, T17) :- search_treeB(T18, X50, X51).
pA(T18, T21, T22, T17) :- ','(search_treeB(T18, T21, T22), lessC(T17, T21)).
search_treeB(tree(T29, void, void), T29, T29).
search_treeB(tree(T38, void, T39), T38, X83) :- pA(T39, X82, X83, T38).
search_treeB(tree(T50, T51, void), X108, T50) :- pD(T51, X108, X107, T50).
search_treeB(tree(T66, T67, T68), X138, X139) :- pE(T67, X138, X136, T66, T68, X137, X139).
lessC(0, s(T87)).
lessC(s(T92), s(T93)) :- lessC(T92, T93).
pD(T51, X108, X107, T50) :- search_treeB(T51, X108, X107).
pD(T51, T54, T55, T50) :- ','(search_treeB(T51, T54, T55), lessC(T55, T50)).
pE(T67, X138, X136, T66, T68, X137, X139) :- search_treeB(T67, X138, X136).
pE(T67, T71, T72, T66, T68, X137, X139) :- ','(search_treeB(T67, T71, T72), lessC(T72, T66)).
pE(T67, T71, T72, T66, T68, X137, X139) :- ','(search_treeB(T67, T71, T72), ','(lessC(T72, T66), pA(T68, X137, X139, T66))).
search_treeF(void).
search_treeF(tree(T8, void, void)).
search_treeF(tree(T17, void, T18)) :- pA(T18, X50, X51, T17).
search_treeF(tree(T104, T105, void)) :- pD(T105, X187, X186, T104).
search_treeF(tree(T114, T115, T116)) :- pE(T115, X213, X211, T114, T116, X212, X214).

Query: search_treeF(g)

(3) PrologToPiTRSProof (SOUND transformation)

We use the technique of [TOCL09]. With regard to the inferred argument filtering the predicates were used in the following modes:
search_treeF_in: (b)
pA_in: (b,f,f,b)
search_treeB_in: (b,f,f)
pD_in: (b,f,f,b)
pE_in: (b,f,f,b,b,f,f)
lessC_in: (f,b) (b,b)
Transforming Prolog into the following Term Rewriting System:
Pi-finite rewrite system:
The TRS R consists of the following rules:

search_treeF_in_g(void) → search_treeF_out_g(void)
search_treeF_in_g(tree(T8, void, void)) → search_treeF_out_g(tree(T8, void, void))
search_treeF_in_g(tree(T17, void, T18)) → U15_g(T17, T18, pA_in_gaag(T18, X50, X51, T17))
pA_in_gaag(T18, X50, X51, T17) → U1_gaag(T18, X50, X51, T17, search_treeB_in_gaa(T18, X50, X51))
search_treeB_in_gaa(tree(T29, void, void), T29, T29) → search_treeB_out_gaa(tree(T29, void, void), T29, T29)
search_treeB_in_gaa(tree(T38, void, T39), T38, X83) → U4_gaa(T38, T39, X83, pA_in_gaag(T39, X82, X83, T38))
pA_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_treeB_in_gaa(T18, T21, T22))
search_treeB_in_gaa(tree(T50, T51, void), X108, T50) → U5_gaa(T50, T51, X108, pD_in_gaag(T51, X108, X107, T50))
pD_in_gaag(T51, X108, X107, T50) → U8_gaag(T51, X108, X107, T50, search_treeB_in_gaa(T51, X108, X107))
search_treeB_in_gaa(tree(T66, T67, T68), X138, X139) → U6_gaa(T66, T67, T68, X138, X139, pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139))
pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139) → U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_in_gaa(T67, X138, X136))
U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_out_gaa(T67, X138, X136)) → pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)
pE_in_gaaggaa(T67, T71, T72, T66, T68, X137, X139) → U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
lessC_in_ag(0, s(T87)) → lessC_out_ag(0, s(T87))
lessC_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, lessC_in_ag(T92, T93))
U7_ag(T92, T93, lessC_out_ag(T92, T93)) → lessC_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_in_gaag(T68, X137, X139, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_out_gaag(T68, X137, X139, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U6_gaa(T66, T67, T68, X138, X139, pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)) → search_treeB_out_gaa(tree(T66, T67, T68), X138, X139)
U8_gaag(T51, X108, X107, T50, search_treeB_out_gaa(T51, X108, X107)) → pD_out_gaag(T51, X108, X107, T50)
pD_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_treeB_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, lessC_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, lessC_out_ag(T55, T50)) → pD_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X108, pD_out_gaag(T51, X108, X107, T50)) → search_treeB_out_gaa(tree(T50, T51, void), X108, T50)
U2_gaag(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, lessC_in_gg(T17, T21))
lessC_in_gg(0, s(T87)) → lessC_out_gg(0, s(T87))
lessC_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, lessC_in_gg(T92, T93))
U7_gg(T92, T93, lessC_out_gg(T92, T93)) → lessC_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, lessC_out_gg(T17, T21)) → pA_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X83, pA_out_gaag(T39, X82, X83, T38)) → search_treeB_out_gaa(tree(T38, void, T39), T38, X83)
U1_gaag(T18, X50, X51, T17, search_treeB_out_gaa(T18, X50, X51)) → pA_out_gaag(T18, X50, X51, T17)
U15_g(T17, T18, pA_out_gaag(T18, X50, X51, T17)) → search_treeF_out_g(tree(T17, void, T18))
search_treeF_in_g(tree(T104, T105, void)) → U16_g(T104, T105, pD_in_gaag(T105, X187, X186, T104))
U16_g(T104, T105, pD_out_gaag(T105, X187, X186, T104)) → search_treeF_out_g(tree(T104, T105, void))
search_treeF_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, pE_in_gaaggaa(T115, X213, X211, T114, T116, X212, X214))
U17_g(T114, T115, T116, pE_out_gaaggaa(T115, X213, X211, T114, T116, X212, X214)) → search_treeF_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_treeF_in_g(x1)  =  search_treeF_in_g(x1)
void  =  void
search_treeF_out_g(x1)  =  search_treeF_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
pA_in_gaag(x1, x2, x3, x4)  =  pA_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_treeB_in_gaa(x1, x2, x3)  =  search_treeB_in_gaa(x1)
search_treeB_out_gaa(x1, x2, x3)  =  search_treeB_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
pD_in_gaag(x1, x2, x3, x4)  =  pD_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
pE_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
pE_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
lessC_in_gg(x1, x2)  =  lessC_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
lessC_out_gg(x1, x2)  =  lessC_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
pA_out_gaag(x1, x2, x3, x4)  =  pA_out_gaag(x2)
lessC_in_ag(x1, x2)  =  lessC_in_ag(x2)
lessC_out_ag(x1, x2)  =  lessC_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
pD_out_gaag(x1, x2, x3, x4)  =  pD_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)

Infinitary Constructor Rewriting Termination of PiTRS implies Termination of Prolog

(4) Obligation:

Pi-finite rewrite system:
The TRS R consists of the following rules:

search_treeF_in_g(void) → search_treeF_out_g(void)
search_treeF_in_g(tree(T8, void, void)) → search_treeF_out_g(tree(T8, void, void))
search_treeF_in_g(tree(T17, void, T18)) → U15_g(T17, T18, pA_in_gaag(T18, X50, X51, T17))
pA_in_gaag(T18, X50, X51, T17) → U1_gaag(T18, X50, X51, T17, search_treeB_in_gaa(T18, X50, X51))
search_treeB_in_gaa(tree(T29, void, void), T29, T29) → search_treeB_out_gaa(tree(T29, void, void), T29, T29)
search_treeB_in_gaa(tree(T38, void, T39), T38, X83) → U4_gaa(T38, T39, X83, pA_in_gaag(T39, X82, X83, T38))
pA_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_treeB_in_gaa(T18, T21, T22))
search_treeB_in_gaa(tree(T50, T51, void), X108, T50) → U5_gaa(T50, T51, X108, pD_in_gaag(T51, X108, X107, T50))
pD_in_gaag(T51, X108, X107, T50) → U8_gaag(T51, X108, X107, T50, search_treeB_in_gaa(T51, X108, X107))
search_treeB_in_gaa(tree(T66, T67, T68), X138, X139) → U6_gaa(T66, T67, T68, X138, X139, pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139))
pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139) → U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_in_gaa(T67, X138, X136))
U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_out_gaa(T67, X138, X136)) → pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)
pE_in_gaaggaa(T67, T71, T72, T66, T68, X137, X139) → U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
lessC_in_ag(0, s(T87)) → lessC_out_ag(0, s(T87))
lessC_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, lessC_in_ag(T92, T93))
U7_ag(T92, T93, lessC_out_ag(T92, T93)) → lessC_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_in_gaag(T68, X137, X139, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_out_gaag(T68, X137, X139, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U6_gaa(T66, T67, T68, X138, X139, pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)) → search_treeB_out_gaa(tree(T66, T67, T68), X138, X139)
U8_gaag(T51, X108, X107, T50, search_treeB_out_gaa(T51, X108, X107)) → pD_out_gaag(T51, X108, X107, T50)
pD_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_treeB_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, lessC_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, lessC_out_ag(T55, T50)) → pD_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X108, pD_out_gaag(T51, X108, X107, T50)) → search_treeB_out_gaa(tree(T50, T51, void), X108, T50)
U2_gaag(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, lessC_in_gg(T17, T21))
lessC_in_gg(0, s(T87)) → lessC_out_gg(0, s(T87))
lessC_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, lessC_in_gg(T92, T93))
U7_gg(T92, T93, lessC_out_gg(T92, T93)) → lessC_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, lessC_out_gg(T17, T21)) → pA_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X83, pA_out_gaag(T39, X82, X83, T38)) → search_treeB_out_gaa(tree(T38, void, T39), T38, X83)
U1_gaag(T18, X50, X51, T17, search_treeB_out_gaa(T18, X50, X51)) → pA_out_gaag(T18, X50, X51, T17)
U15_g(T17, T18, pA_out_gaag(T18, X50, X51, T17)) → search_treeF_out_g(tree(T17, void, T18))
search_treeF_in_g(tree(T104, T105, void)) → U16_g(T104, T105, pD_in_gaag(T105, X187, X186, T104))
U16_g(T104, T105, pD_out_gaag(T105, X187, X186, T104)) → search_treeF_out_g(tree(T104, T105, void))
search_treeF_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, pE_in_gaaggaa(T115, X213, X211, T114, T116, X212, X214))
U17_g(T114, T115, T116, pE_out_gaaggaa(T115, X213, X211, T114, T116, X212, X214)) → search_treeF_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_treeF_in_g(x1)  =  search_treeF_in_g(x1)
void  =  void
search_treeF_out_g(x1)  =  search_treeF_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
pA_in_gaag(x1, x2, x3, x4)  =  pA_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_treeB_in_gaa(x1, x2, x3)  =  search_treeB_in_gaa(x1)
search_treeB_out_gaa(x1, x2, x3)  =  search_treeB_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
pD_in_gaag(x1, x2, x3, x4)  =  pD_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
pE_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
pE_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
lessC_in_gg(x1, x2)  =  lessC_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
lessC_out_gg(x1, x2)  =  lessC_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
pA_out_gaag(x1, x2, x3, x4)  =  pA_out_gaag(x2)
lessC_in_ag(x1, x2)  =  lessC_in_ag(x2)
lessC_out_ag(x1, x2)  =  lessC_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
pD_out_gaag(x1, x2, x3, x4)  =  pD_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)

(5) DependencyPairsProof (EQUIVALENT transformation)

Using Dependency Pairs [AG00,LOPSTR] we result in the following initial DP problem:
Pi DP problem:
The TRS P consists of the following rules:

SEARCH_TREEF_IN_G(tree(T17, void, T18)) → U15_G(T17, T18, pA_in_gaag(T18, X50, X51, T17))
SEARCH_TREEF_IN_G(tree(T17, void, T18)) → PA_IN_GAAG(T18, X50, X51, T17)
PA_IN_GAAG(T18, X50, X51, T17) → U1_GAAG(T18, X50, X51, T17, search_treeB_in_gaa(T18, X50, X51))
PA_IN_GAAG(T18, X50, X51, T17) → SEARCH_TREEB_IN_GAA(T18, X50, X51)
SEARCH_TREEB_IN_GAA(tree(T38, void, T39), T38, X83) → U4_GAA(T38, T39, X83, pA_in_gaag(T39, X82, X83, T38))
SEARCH_TREEB_IN_GAA(tree(T38, void, T39), T38, X83) → PA_IN_GAAG(T39, X82, X83, T38)
PA_IN_GAAG(T18, T21, T22, T17) → U2_GAAG(T18, T21, T22, T17, search_treeB_in_gaa(T18, T21, T22))
SEARCH_TREEB_IN_GAA(tree(T50, T51, void), X108, T50) → U5_GAA(T50, T51, X108, pD_in_gaag(T51, X108, X107, T50))
SEARCH_TREEB_IN_GAA(tree(T50, T51, void), X108, T50) → PD_IN_GAAG(T51, X108, X107, T50)
PD_IN_GAAG(T51, X108, X107, T50) → U8_GAAG(T51, X108, X107, T50, search_treeB_in_gaa(T51, X108, X107))
PD_IN_GAAG(T51, X108, X107, T50) → SEARCH_TREEB_IN_GAA(T51, X108, X107)
SEARCH_TREEB_IN_GAA(tree(T66, T67, T68), X138, X139) → U6_GAA(T66, T67, T68, X138, X139, pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139))
SEARCH_TREEB_IN_GAA(tree(T66, T67, T68), X138, X139) → PE_IN_GAAGGAA(T67, X138, X136, T66, T68, X137, X139)
PE_IN_GAAGGAA(T67, X138, X136, T66, T68, X137, X139) → U11_GAAGGAA(T67, X138, X136, T66, T68, X137, X139, search_treeB_in_gaa(T67, X138, X136))
PE_IN_GAAGGAA(T67, X138, X136, T66, T68, X137, X139) → SEARCH_TREEB_IN_GAA(T67, X138, X136)
PE_IN_GAAGGAA(T67, T71, T72, T66, T68, X137, X139) → U12_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
U12_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → LESSC_IN_AG(T72, T66)
LESSC_IN_AG(s(T92), s(T93)) → U7_AG(T92, T93, lessC_in_ag(T92, T93))
LESSC_IN_AG(s(T92), s(T93)) → LESSC_IN_AG(T92, T93)
U13_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → U14_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, pA_in_gaag(T68, X137, X139, T66))
U13_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → PA_IN_GAAG(T68, X137, X139, T66)
PD_IN_GAAG(T51, T54, T55, T50) → U9_GAAG(T51, T54, T55, T50, search_treeB_in_gaa(T51, T54, T55))
U9_GAAG(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → U10_GAAG(T51, T54, T55, T50, lessC_in_ag(T55, T50))
U9_GAAG(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → LESSC_IN_AG(T55, T50)
U2_GAAG(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → U3_GAAG(T18, T21, T22, T17, lessC_in_gg(T17, T21))
U2_GAAG(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → LESSC_IN_GG(T17, T21)
LESSC_IN_GG(s(T92), s(T93)) → U7_GG(T92, T93, lessC_in_gg(T92, T93))
LESSC_IN_GG(s(T92), s(T93)) → LESSC_IN_GG(T92, T93)
SEARCH_TREEF_IN_G(tree(T104, T105, void)) → U16_G(T104, T105, pD_in_gaag(T105, X187, X186, T104))
SEARCH_TREEF_IN_G(tree(T104, T105, void)) → PD_IN_GAAG(T105, X187, X186, T104)
SEARCH_TREEF_IN_G(tree(T114, T115, T116)) → U17_G(T114, T115, T116, pE_in_gaaggaa(T115, X213, X211, T114, T116, X212, X214))
SEARCH_TREEF_IN_G(tree(T114, T115, T116)) → PE_IN_GAAGGAA(T115, X213, X211, T114, T116, X212, X214)

The TRS R consists of the following rules:

search_treeF_in_g(void) → search_treeF_out_g(void)
search_treeF_in_g(tree(T8, void, void)) → search_treeF_out_g(tree(T8, void, void))
search_treeF_in_g(tree(T17, void, T18)) → U15_g(T17, T18, pA_in_gaag(T18, X50, X51, T17))
pA_in_gaag(T18, X50, X51, T17) → U1_gaag(T18, X50, X51, T17, search_treeB_in_gaa(T18, X50, X51))
search_treeB_in_gaa(tree(T29, void, void), T29, T29) → search_treeB_out_gaa(tree(T29, void, void), T29, T29)
search_treeB_in_gaa(tree(T38, void, T39), T38, X83) → U4_gaa(T38, T39, X83, pA_in_gaag(T39, X82, X83, T38))
pA_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_treeB_in_gaa(T18, T21, T22))
search_treeB_in_gaa(tree(T50, T51, void), X108, T50) → U5_gaa(T50, T51, X108, pD_in_gaag(T51, X108, X107, T50))
pD_in_gaag(T51, X108, X107, T50) → U8_gaag(T51, X108, X107, T50, search_treeB_in_gaa(T51, X108, X107))
search_treeB_in_gaa(tree(T66, T67, T68), X138, X139) → U6_gaa(T66, T67, T68, X138, X139, pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139))
pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139) → U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_in_gaa(T67, X138, X136))
U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_out_gaa(T67, X138, X136)) → pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)
pE_in_gaaggaa(T67, T71, T72, T66, T68, X137, X139) → U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
lessC_in_ag(0, s(T87)) → lessC_out_ag(0, s(T87))
lessC_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, lessC_in_ag(T92, T93))
U7_ag(T92, T93, lessC_out_ag(T92, T93)) → lessC_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_in_gaag(T68, X137, X139, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_out_gaag(T68, X137, X139, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U6_gaa(T66, T67, T68, X138, X139, pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)) → search_treeB_out_gaa(tree(T66, T67, T68), X138, X139)
U8_gaag(T51, X108, X107, T50, search_treeB_out_gaa(T51, X108, X107)) → pD_out_gaag(T51, X108, X107, T50)
pD_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_treeB_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, lessC_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, lessC_out_ag(T55, T50)) → pD_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X108, pD_out_gaag(T51, X108, X107, T50)) → search_treeB_out_gaa(tree(T50, T51, void), X108, T50)
U2_gaag(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, lessC_in_gg(T17, T21))
lessC_in_gg(0, s(T87)) → lessC_out_gg(0, s(T87))
lessC_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, lessC_in_gg(T92, T93))
U7_gg(T92, T93, lessC_out_gg(T92, T93)) → lessC_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, lessC_out_gg(T17, T21)) → pA_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X83, pA_out_gaag(T39, X82, X83, T38)) → search_treeB_out_gaa(tree(T38, void, T39), T38, X83)
U1_gaag(T18, X50, X51, T17, search_treeB_out_gaa(T18, X50, X51)) → pA_out_gaag(T18, X50, X51, T17)
U15_g(T17, T18, pA_out_gaag(T18, X50, X51, T17)) → search_treeF_out_g(tree(T17, void, T18))
search_treeF_in_g(tree(T104, T105, void)) → U16_g(T104, T105, pD_in_gaag(T105, X187, X186, T104))
U16_g(T104, T105, pD_out_gaag(T105, X187, X186, T104)) → search_treeF_out_g(tree(T104, T105, void))
search_treeF_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, pE_in_gaaggaa(T115, X213, X211, T114, T116, X212, X214))
U17_g(T114, T115, T116, pE_out_gaaggaa(T115, X213, X211, T114, T116, X212, X214)) → search_treeF_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_treeF_in_g(x1)  =  search_treeF_in_g(x1)
void  =  void
search_treeF_out_g(x1)  =  search_treeF_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
pA_in_gaag(x1, x2, x3, x4)  =  pA_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_treeB_in_gaa(x1, x2, x3)  =  search_treeB_in_gaa(x1)
search_treeB_out_gaa(x1, x2, x3)  =  search_treeB_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
pD_in_gaag(x1, x2, x3, x4)  =  pD_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
pE_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
pE_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
lessC_in_gg(x1, x2)  =  lessC_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
lessC_out_gg(x1, x2)  =  lessC_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
pA_out_gaag(x1, x2, x3, x4)  =  pA_out_gaag(x2)
lessC_in_ag(x1, x2)  =  lessC_in_ag(x2)
lessC_out_ag(x1, x2)  =  lessC_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
pD_out_gaag(x1, x2, x3, x4)  =  pD_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)
SEARCH_TREEF_IN_G(x1)  =  SEARCH_TREEF_IN_G(x1)
U15_G(x1, x2, x3)  =  U15_G(x3)
PA_IN_GAAG(x1, x2, x3, x4)  =  PA_IN_GAAG(x1, x4)
U1_GAAG(x1, x2, x3, x4, x5)  =  U1_GAAG(x5)
SEARCH_TREEB_IN_GAA(x1, x2, x3)  =  SEARCH_TREEB_IN_GAA(x1)
U4_GAA(x1, x2, x3, x4)  =  U4_GAA(x1, x4)
U2_GAAG(x1, x2, x3, x4, x5)  =  U2_GAAG(x4, x5)
U5_GAA(x1, x2, x3, x4)  =  U5_GAA(x4)
PD_IN_GAAG(x1, x2, x3, x4)  =  PD_IN_GAAG(x1, x4)
U8_GAAG(x1, x2, x3, x4, x5)  =  U8_GAAG(x5)
U6_GAA(x1, x2, x3, x4, x5, x6)  =  U6_GAA(x6)
PE_IN_GAAGGAA(x1, x2, x3, x4, x5, x6, x7)  =  PE_IN_GAAGGAA(x1, x4, x5)
U11_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_GAAGGAA(x8)
U12_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_GAAGGAA(x4, x5, x8)
U13_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_GAAGGAA(x2, x4, x5, x8)
LESSC_IN_AG(x1, x2)  =  LESSC_IN_AG(x2)
U7_AG(x1, x2, x3)  =  U7_AG(x3)
U14_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_GAAGGAA(x2, x8)
U9_GAAG(x1, x2, x3, x4, x5)  =  U9_GAAG(x4, x5)
U10_GAAG(x1, x2, x3, x4, x5)  =  U10_GAAG(x2, x5)
U3_GAAG(x1, x2, x3, x4, x5)  =  U3_GAAG(x2, x5)
LESSC_IN_GG(x1, x2)  =  LESSC_IN_GG(x1, x2)
U7_GG(x1, x2, x3)  =  U7_GG(x3)
U16_G(x1, x2, x3)  =  U16_G(x3)
U17_G(x1, x2, x3, x4)  =  U17_G(x4)

We have to consider all (P,R,Pi)-chains

(6) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

SEARCH_TREEF_IN_G(tree(T17, void, T18)) → U15_G(T17, T18, pA_in_gaag(T18, X50, X51, T17))
SEARCH_TREEF_IN_G(tree(T17, void, T18)) → PA_IN_GAAG(T18, X50, X51, T17)
PA_IN_GAAG(T18, X50, X51, T17) → U1_GAAG(T18, X50, X51, T17, search_treeB_in_gaa(T18, X50, X51))
PA_IN_GAAG(T18, X50, X51, T17) → SEARCH_TREEB_IN_GAA(T18, X50, X51)
SEARCH_TREEB_IN_GAA(tree(T38, void, T39), T38, X83) → U4_GAA(T38, T39, X83, pA_in_gaag(T39, X82, X83, T38))
SEARCH_TREEB_IN_GAA(tree(T38, void, T39), T38, X83) → PA_IN_GAAG(T39, X82, X83, T38)
PA_IN_GAAG(T18, T21, T22, T17) → U2_GAAG(T18, T21, T22, T17, search_treeB_in_gaa(T18, T21, T22))
SEARCH_TREEB_IN_GAA(tree(T50, T51, void), X108, T50) → U5_GAA(T50, T51, X108, pD_in_gaag(T51, X108, X107, T50))
SEARCH_TREEB_IN_GAA(tree(T50, T51, void), X108, T50) → PD_IN_GAAG(T51, X108, X107, T50)
PD_IN_GAAG(T51, X108, X107, T50) → U8_GAAG(T51, X108, X107, T50, search_treeB_in_gaa(T51, X108, X107))
PD_IN_GAAG(T51, X108, X107, T50) → SEARCH_TREEB_IN_GAA(T51, X108, X107)
SEARCH_TREEB_IN_GAA(tree(T66, T67, T68), X138, X139) → U6_GAA(T66, T67, T68, X138, X139, pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139))
SEARCH_TREEB_IN_GAA(tree(T66, T67, T68), X138, X139) → PE_IN_GAAGGAA(T67, X138, X136, T66, T68, X137, X139)
PE_IN_GAAGGAA(T67, X138, X136, T66, T68, X137, X139) → U11_GAAGGAA(T67, X138, X136, T66, T68, X137, X139, search_treeB_in_gaa(T67, X138, X136))
PE_IN_GAAGGAA(T67, X138, X136, T66, T68, X137, X139) → SEARCH_TREEB_IN_GAA(T67, X138, X136)
PE_IN_GAAGGAA(T67, T71, T72, T66, T68, X137, X139) → U12_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
U12_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → LESSC_IN_AG(T72, T66)
LESSC_IN_AG(s(T92), s(T93)) → U7_AG(T92, T93, lessC_in_ag(T92, T93))
LESSC_IN_AG(s(T92), s(T93)) → LESSC_IN_AG(T92, T93)
U13_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → U14_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, pA_in_gaag(T68, X137, X139, T66))
U13_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → PA_IN_GAAG(T68, X137, X139, T66)
PD_IN_GAAG(T51, T54, T55, T50) → U9_GAAG(T51, T54, T55, T50, search_treeB_in_gaa(T51, T54, T55))
U9_GAAG(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → U10_GAAG(T51, T54, T55, T50, lessC_in_ag(T55, T50))
U9_GAAG(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → LESSC_IN_AG(T55, T50)
U2_GAAG(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → U3_GAAG(T18, T21, T22, T17, lessC_in_gg(T17, T21))
U2_GAAG(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → LESSC_IN_GG(T17, T21)
LESSC_IN_GG(s(T92), s(T93)) → U7_GG(T92, T93, lessC_in_gg(T92, T93))
LESSC_IN_GG(s(T92), s(T93)) → LESSC_IN_GG(T92, T93)
SEARCH_TREEF_IN_G(tree(T104, T105, void)) → U16_G(T104, T105, pD_in_gaag(T105, X187, X186, T104))
SEARCH_TREEF_IN_G(tree(T104, T105, void)) → PD_IN_GAAG(T105, X187, X186, T104)
SEARCH_TREEF_IN_G(tree(T114, T115, T116)) → U17_G(T114, T115, T116, pE_in_gaaggaa(T115, X213, X211, T114, T116, X212, X214))
SEARCH_TREEF_IN_G(tree(T114, T115, T116)) → PE_IN_GAAGGAA(T115, X213, X211, T114, T116, X212, X214)

The TRS R consists of the following rules:

search_treeF_in_g(void) → search_treeF_out_g(void)
search_treeF_in_g(tree(T8, void, void)) → search_treeF_out_g(tree(T8, void, void))
search_treeF_in_g(tree(T17, void, T18)) → U15_g(T17, T18, pA_in_gaag(T18, X50, X51, T17))
pA_in_gaag(T18, X50, X51, T17) → U1_gaag(T18, X50, X51, T17, search_treeB_in_gaa(T18, X50, X51))
search_treeB_in_gaa(tree(T29, void, void), T29, T29) → search_treeB_out_gaa(tree(T29, void, void), T29, T29)
search_treeB_in_gaa(tree(T38, void, T39), T38, X83) → U4_gaa(T38, T39, X83, pA_in_gaag(T39, X82, X83, T38))
pA_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_treeB_in_gaa(T18, T21, T22))
search_treeB_in_gaa(tree(T50, T51, void), X108, T50) → U5_gaa(T50, T51, X108, pD_in_gaag(T51, X108, X107, T50))
pD_in_gaag(T51, X108, X107, T50) → U8_gaag(T51, X108, X107, T50, search_treeB_in_gaa(T51, X108, X107))
search_treeB_in_gaa(tree(T66, T67, T68), X138, X139) → U6_gaa(T66, T67, T68, X138, X139, pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139))
pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139) → U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_in_gaa(T67, X138, X136))
U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_out_gaa(T67, X138, X136)) → pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)
pE_in_gaaggaa(T67, T71, T72, T66, T68, X137, X139) → U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
lessC_in_ag(0, s(T87)) → lessC_out_ag(0, s(T87))
lessC_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, lessC_in_ag(T92, T93))
U7_ag(T92, T93, lessC_out_ag(T92, T93)) → lessC_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_in_gaag(T68, X137, X139, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_out_gaag(T68, X137, X139, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U6_gaa(T66, T67, T68, X138, X139, pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)) → search_treeB_out_gaa(tree(T66, T67, T68), X138, X139)
U8_gaag(T51, X108, X107, T50, search_treeB_out_gaa(T51, X108, X107)) → pD_out_gaag(T51, X108, X107, T50)
pD_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_treeB_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, lessC_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, lessC_out_ag(T55, T50)) → pD_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X108, pD_out_gaag(T51, X108, X107, T50)) → search_treeB_out_gaa(tree(T50, T51, void), X108, T50)
U2_gaag(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, lessC_in_gg(T17, T21))
lessC_in_gg(0, s(T87)) → lessC_out_gg(0, s(T87))
lessC_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, lessC_in_gg(T92, T93))
U7_gg(T92, T93, lessC_out_gg(T92, T93)) → lessC_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, lessC_out_gg(T17, T21)) → pA_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X83, pA_out_gaag(T39, X82, X83, T38)) → search_treeB_out_gaa(tree(T38, void, T39), T38, X83)
U1_gaag(T18, X50, X51, T17, search_treeB_out_gaa(T18, X50, X51)) → pA_out_gaag(T18, X50, X51, T17)
U15_g(T17, T18, pA_out_gaag(T18, X50, X51, T17)) → search_treeF_out_g(tree(T17, void, T18))
search_treeF_in_g(tree(T104, T105, void)) → U16_g(T104, T105, pD_in_gaag(T105, X187, X186, T104))
U16_g(T104, T105, pD_out_gaag(T105, X187, X186, T104)) → search_treeF_out_g(tree(T104, T105, void))
search_treeF_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, pE_in_gaaggaa(T115, X213, X211, T114, T116, X212, X214))
U17_g(T114, T115, T116, pE_out_gaaggaa(T115, X213, X211, T114, T116, X212, X214)) → search_treeF_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_treeF_in_g(x1)  =  search_treeF_in_g(x1)
void  =  void
search_treeF_out_g(x1)  =  search_treeF_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
pA_in_gaag(x1, x2, x3, x4)  =  pA_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_treeB_in_gaa(x1, x2, x3)  =  search_treeB_in_gaa(x1)
search_treeB_out_gaa(x1, x2, x3)  =  search_treeB_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
pD_in_gaag(x1, x2, x3, x4)  =  pD_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
pE_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
pE_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
lessC_in_gg(x1, x2)  =  lessC_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
lessC_out_gg(x1, x2)  =  lessC_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
pA_out_gaag(x1, x2, x3, x4)  =  pA_out_gaag(x2)
lessC_in_ag(x1, x2)  =  lessC_in_ag(x2)
lessC_out_ag(x1, x2)  =  lessC_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
pD_out_gaag(x1, x2, x3, x4)  =  pD_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)
SEARCH_TREEF_IN_G(x1)  =  SEARCH_TREEF_IN_G(x1)
U15_G(x1, x2, x3)  =  U15_G(x3)
PA_IN_GAAG(x1, x2, x3, x4)  =  PA_IN_GAAG(x1, x4)
U1_GAAG(x1, x2, x3, x4, x5)  =  U1_GAAG(x5)
SEARCH_TREEB_IN_GAA(x1, x2, x3)  =  SEARCH_TREEB_IN_GAA(x1)
U4_GAA(x1, x2, x3, x4)  =  U4_GAA(x1, x4)
U2_GAAG(x1, x2, x3, x4, x5)  =  U2_GAAG(x4, x5)
U5_GAA(x1, x2, x3, x4)  =  U5_GAA(x4)
PD_IN_GAAG(x1, x2, x3, x4)  =  PD_IN_GAAG(x1, x4)
U8_GAAG(x1, x2, x3, x4, x5)  =  U8_GAAG(x5)
U6_GAA(x1, x2, x3, x4, x5, x6)  =  U6_GAA(x6)
PE_IN_GAAGGAA(x1, x2, x3, x4, x5, x6, x7)  =  PE_IN_GAAGGAA(x1, x4, x5)
U11_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_GAAGGAA(x8)
U12_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_GAAGGAA(x4, x5, x8)
U13_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_GAAGGAA(x2, x4, x5, x8)
LESSC_IN_AG(x1, x2)  =  LESSC_IN_AG(x2)
U7_AG(x1, x2, x3)  =  U7_AG(x3)
U14_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_GAAGGAA(x2, x8)
U9_GAAG(x1, x2, x3, x4, x5)  =  U9_GAAG(x4, x5)
U10_GAAG(x1, x2, x3, x4, x5)  =  U10_GAAG(x2, x5)
U3_GAAG(x1, x2, x3, x4, x5)  =  U3_GAAG(x2, x5)
LESSC_IN_GG(x1, x2)  =  LESSC_IN_GG(x1, x2)
U7_GG(x1, x2, x3)  =  U7_GG(x3)
U16_G(x1, x2, x3)  =  U16_G(x3)
U17_G(x1, x2, x3, x4)  =  U17_G(x4)

We have to consider all (P,R,Pi)-chains

(7) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LOPSTR] contains 3 SCCs with 22 less nodes.

(8) Complex Obligation (AND)

(9) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

LESSC_IN_GG(s(T92), s(T93)) → LESSC_IN_GG(T92, T93)

The TRS R consists of the following rules:

search_treeF_in_g(void) → search_treeF_out_g(void)
search_treeF_in_g(tree(T8, void, void)) → search_treeF_out_g(tree(T8, void, void))
search_treeF_in_g(tree(T17, void, T18)) → U15_g(T17, T18, pA_in_gaag(T18, X50, X51, T17))
pA_in_gaag(T18, X50, X51, T17) → U1_gaag(T18, X50, X51, T17, search_treeB_in_gaa(T18, X50, X51))
search_treeB_in_gaa(tree(T29, void, void), T29, T29) → search_treeB_out_gaa(tree(T29, void, void), T29, T29)
search_treeB_in_gaa(tree(T38, void, T39), T38, X83) → U4_gaa(T38, T39, X83, pA_in_gaag(T39, X82, X83, T38))
pA_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_treeB_in_gaa(T18, T21, T22))
search_treeB_in_gaa(tree(T50, T51, void), X108, T50) → U5_gaa(T50, T51, X108, pD_in_gaag(T51, X108, X107, T50))
pD_in_gaag(T51, X108, X107, T50) → U8_gaag(T51, X108, X107, T50, search_treeB_in_gaa(T51, X108, X107))
search_treeB_in_gaa(tree(T66, T67, T68), X138, X139) → U6_gaa(T66, T67, T68, X138, X139, pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139))
pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139) → U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_in_gaa(T67, X138, X136))
U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_out_gaa(T67, X138, X136)) → pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)
pE_in_gaaggaa(T67, T71, T72, T66, T68, X137, X139) → U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
lessC_in_ag(0, s(T87)) → lessC_out_ag(0, s(T87))
lessC_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, lessC_in_ag(T92, T93))
U7_ag(T92, T93, lessC_out_ag(T92, T93)) → lessC_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_in_gaag(T68, X137, X139, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_out_gaag(T68, X137, X139, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U6_gaa(T66, T67, T68, X138, X139, pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)) → search_treeB_out_gaa(tree(T66, T67, T68), X138, X139)
U8_gaag(T51, X108, X107, T50, search_treeB_out_gaa(T51, X108, X107)) → pD_out_gaag(T51, X108, X107, T50)
pD_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_treeB_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, lessC_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, lessC_out_ag(T55, T50)) → pD_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X108, pD_out_gaag(T51, X108, X107, T50)) → search_treeB_out_gaa(tree(T50, T51, void), X108, T50)
U2_gaag(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, lessC_in_gg(T17, T21))
lessC_in_gg(0, s(T87)) → lessC_out_gg(0, s(T87))
lessC_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, lessC_in_gg(T92, T93))
U7_gg(T92, T93, lessC_out_gg(T92, T93)) → lessC_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, lessC_out_gg(T17, T21)) → pA_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X83, pA_out_gaag(T39, X82, X83, T38)) → search_treeB_out_gaa(tree(T38, void, T39), T38, X83)
U1_gaag(T18, X50, X51, T17, search_treeB_out_gaa(T18, X50, X51)) → pA_out_gaag(T18, X50, X51, T17)
U15_g(T17, T18, pA_out_gaag(T18, X50, X51, T17)) → search_treeF_out_g(tree(T17, void, T18))
search_treeF_in_g(tree(T104, T105, void)) → U16_g(T104, T105, pD_in_gaag(T105, X187, X186, T104))
U16_g(T104, T105, pD_out_gaag(T105, X187, X186, T104)) → search_treeF_out_g(tree(T104, T105, void))
search_treeF_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, pE_in_gaaggaa(T115, X213, X211, T114, T116, X212, X214))
U17_g(T114, T115, T116, pE_out_gaaggaa(T115, X213, X211, T114, T116, X212, X214)) → search_treeF_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_treeF_in_g(x1)  =  search_treeF_in_g(x1)
void  =  void
search_treeF_out_g(x1)  =  search_treeF_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
pA_in_gaag(x1, x2, x3, x4)  =  pA_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_treeB_in_gaa(x1, x2, x3)  =  search_treeB_in_gaa(x1)
search_treeB_out_gaa(x1, x2, x3)  =  search_treeB_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
pD_in_gaag(x1, x2, x3, x4)  =  pD_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
pE_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
pE_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
lessC_in_gg(x1, x2)  =  lessC_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
lessC_out_gg(x1, x2)  =  lessC_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
pA_out_gaag(x1, x2, x3, x4)  =  pA_out_gaag(x2)
lessC_in_ag(x1, x2)  =  lessC_in_ag(x2)
lessC_out_ag(x1, x2)  =  lessC_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
pD_out_gaag(x1, x2, x3, x4)  =  pD_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)
LESSC_IN_GG(x1, x2)  =  LESSC_IN_GG(x1, x2)

We have to consider all (P,R,Pi)-chains

(10) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(11) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

LESSC_IN_GG(s(T92), s(T93)) → LESSC_IN_GG(T92, T93)

R is empty.
Pi is empty.
We have to consider all (P,R,Pi)-chains

(12) PiDPToQDPProof (EQUIVALENT transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(13) Obligation:

Q DP problem:
The TRS P consists of the following rules:

LESSC_IN_GG(s(T92), s(T93)) → LESSC_IN_GG(T92, T93)

R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.

(14) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • LESSC_IN_GG(s(T92), s(T93)) → LESSC_IN_GG(T92, T93)
    The graph contains the following edges 1 > 1, 2 > 2

(15) YES

(16) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

LESSC_IN_AG(s(T92), s(T93)) → LESSC_IN_AG(T92, T93)

The TRS R consists of the following rules:

search_treeF_in_g(void) → search_treeF_out_g(void)
search_treeF_in_g(tree(T8, void, void)) → search_treeF_out_g(tree(T8, void, void))
search_treeF_in_g(tree(T17, void, T18)) → U15_g(T17, T18, pA_in_gaag(T18, X50, X51, T17))
pA_in_gaag(T18, X50, X51, T17) → U1_gaag(T18, X50, X51, T17, search_treeB_in_gaa(T18, X50, X51))
search_treeB_in_gaa(tree(T29, void, void), T29, T29) → search_treeB_out_gaa(tree(T29, void, void), T29, T29)
search_treeB_in_gaa(tree(T38, void, T39), T38, X83) → U4_gaa(T38, T39, X83, pA_in_gaag(T39, X82, X83, T38))
pA_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_treeB_in_gaa(T18, T21, T22))
search_treeB_in_gaa(tree(T50, T51, void), X108, T50) → U5_gaa(T50, T51, X108, pD_in_gaag(T51, X108, X107, T50))
pD_in_gaag(T51, X108, X107, T50) → U8_gaag(T51, X108, X107, T50, search_treeB_in_gaa(T51, X108, X107))
search_treeB_in_gaa(tree(T66, T67, T68), X138, X139) → U6_gaa(T66, T67, T68, X138, X139, pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139))
pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139) → U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_in_gaa(T67, X138, X136))
U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_out_gaa(T67, X138, X136)) → pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)
pE_in_gaaggaa(T67, T71, T72, T66, T68, X137, X139) → U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
lessC_in_ag(0, s(T87)) → lessC_out_ag(0, s(T87))
lessC_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, lessC_in_ag(T92, T93))
U7_ag(T92, T93, lessC_out_ag(T92, T93)) → lessC_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_in_gaag(T68, X137, X139, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_out_gaag(T68, X137, X139, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U6_gaa(T66, T67, T68, X138, X139, pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)) → search_treeB_out_gaa(tree(T66, T67, T68), X138, X139)
U8_gaag(T51, X108, X107, T50, search_treeB_out_gaa(T51, X108, X107)) → pD_out_gaag(T51, X108, X107, T50)
pD_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_treeB_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, lessC_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, lessC_out_ag(T55, T50)) → pD_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X108, pD_out_gaag(T51, X108, X107, T50)) → search_treeB_out_gaa(tree(T50, T51, void), X108, T50)
U2_gaag(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, lessC_in_gg(T17, T21))
lessC_in_gg(0, s(T87)) → lessC_out_gg(0, s(T87))
lessC_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, lessC_in_gg(T92, T93))
U7_gg(T92, T93, lessC_out_gg(T92, T93)) → lessC_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, lessC_out_gg(T17, T21)) → pA_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X83, pA_out_gaag(T39, X82, X83, T38)) → search_treeB_out_gaa(tree(T38, void, T39), T38, X83)
U1_gaag(T18, X50, X51, T17, search_treeB_out_gaa(T18, X50, X51)) → pA_out_gaag(T18, X50, X51, T17)
U15_g(T17, T18, pA_out_gaag(T18, X50, X51, T17)) → search_treeF_out_g(tree(T17, void, T18))
search_treeF_in_g(tree(T104, T105, void)) → U16_g(T104, T105, pD_in_gaag(T105, X187, X186, T104))
U16_g(T104, T105, pD_out_gaag(T105, X187, X186, T104)) → search_treeF_out_g(tree(T104, T105, void))
search_treeF_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, pE_in_gaaggaa(T115, X213, X211, T114, T116, X212, X214))
U17_g(T114, T115, T116, pE_out_gaaggaa(T115, X213, X211, T114, T116, X212, X214)) → search_treeF_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_treeF_in_g(x1)  =  search_treeF_in_g(x1)
void  =  void
search_treeF_out_g(x1)  =  search_treeF_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
pA_in_gaag(x1, x2, x3, x4)  =  pA_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_treeB_in_gaa(x1, x2, x3)  =  search_treeB_in_gaa(x1)
search_treeB_out_gaa(x1, x2, x3)  =  search_treeB_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
pD_in_gaag(x1, x2, x3, x4)  =  pD_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
pE_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
pE_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
lessC_in_gg(x1, x2)  =  lessC_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
lessC_out_gg(x1, x2)  =  lessC_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
pA_out_gaag(x1, x2, x3, x4)  =  pA_out_gaag(x2)
lessC_in_ag(x1, x2)  =  lessC_in_ag(x2)
lessC_out_ag(x1, x2)  =  lessC_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
pD_out_gaag(x1, x2, x3, x4)  =  pD_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)
LESSC_IN_AG(x1, x2)  =  LESSC_IN_AG(x2)

We have to consider all (P,R,Pi)-chains

(17) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(18) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

LESSC_IN_AG(s(T92), s(T93)) → LESSC_IN_AG(T92, T93)

R is empty.
The argument filtering Pi contains the following mapping:
s(x1)  =  s(x1)
LESSC_IN_AG(x1, x2)  =  LESSC_IN_AG(x2)

We have to consider all (P,R,Pi)-chains

(19) PiDPToQDPProof (SOUND transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(20) Obligation:

Q DP problem:
The TRS P consists of the following rules:

LESSC_IN_AG(s(T93)) → LESSC_IN_AG(T93)

R is empty.
Q is empty.
We have to consider all (P,Q,R)-chains.

(21) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • LESSC_IN_AG(s(T93)) → LESSC_IN_AG(T93)
    The graph contains the following edges 1 > 1

(22) YES

(23) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

PA_IN_GAAG(T18, X50, X51, T17) → SEARCH_TREEB_IN_GAA(T18, X50, X51)
SEARCH_TREEB_IN_GAA(tree(T38, void, T39), T38, X83) → PA_IN_GAAG(T39, X82, X83, T38)
SEARCH_TREEB_IN_GAA(tree(T50, T51, void), X108, T50) → PD_IN_GAAG(T51, X108, X107, T50)
PD_IN_GAAG(T51, X108, X107, T50) → SEARCH_TREEB_IN_GAA(T51, X108, X107)
SEARCH_TREEB_IN_GAA(tree(T66, T67, T68), X138, X139) → PE_IN_GAAGGAA(T67, X138, X136, T66, T68, X137, X139)
PE_IN_GAAGGAA(T67, X138, X136, T66, T68, X137, X139) → SEARCH_TREEB_IN_GAA(T67, X138, X136)
PE_IN_GAAGGAA(T67, T71, T72, T66, T68, X137, X139) → U12_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
U13_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → PA_IN_GAAG(T68, X137, X139, T66)

The TRS R consists of the following rules:

search_treeF_in_g(void) → search_treeF_out_g(void)
search_treeF_in_g(tree(T8, void, void)) → search_treeF_out_g(tree(T8, void, void))
search_treeF_in_g(tree(T17, void, T18)) → U15_g(T17, T18, pA_in_gaag(T18, X50, X51, T17))
pA_in_gaag(T18, X50, X51, T17) → U1_gaag(T18, X50, X51, T17, search_treeB_in_gaa(T18, X50, X51))
search_treeB_in_gaa(tree(T29, void, void), T29, T29) → search_treeB_out_gaa(tree(T29, void, void), T29, T29)
search_treeB_in_gaa(tree(T38, void, T39), T38, X83) → U4_gaa(T38, T39, X83, pA_in_gaag(T39, X82, X83, T38))
pA_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_treeB_in_gaa(T18, T21, T22))
search_treeB_in_gaa(tree(T50, T51, void), X108, T50) → U5_gaa(T50, T51, X108, pD_in_gaag(T51, X108, X107, T50))
pD_in_gaag(T51, X108, X107, T50) → U8_gaag(T51, X108, X107, T50, search_treeB_in_gaa(T51, X108, X107))
search_treeB_in_gaa(tree(T66, T67, T68), X138, X139) → U6_gaa(T66, T67, T68, X138, X139, pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139))
pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139) → U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_in_gaa(T67, X138, X136))
U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_out_gaa(T67, X138, X136)) → pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)
pE_in_gaaggaa(T67, T71, T72, T66, T68, X137, X139) → U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
lessC_in_ag(0, s(T87)) → lessC_out_ag(0, s(T87))
lessC_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, lessC_in_ag(T92, T93))
U7_ag(T92, T93, lessC_out_ag(T92, T93)) → lessC_out_ag(s(T92), s(T93))
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_in_gaag(T68, X137, X139, T66))
U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_out_gaag(T68, X137, X139, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U6_gaa(T66, T67, T68, X138, X139, pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)) → search_treeB_out_gaa(tree(T66, T67, T68), X138, X139)
U8_gaag(T51, X108, X107, T50, search_treeB_out_gaa(T51, X108, X107)) → pD_out_gaag(T51, X108, X107, T50)
pD_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_treeB_in_gaa(T51, T54, T55))
U9_gaag(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, lessC_in_ag(T55, T50))
U10_gaag(T51, T54, T55, T50, lessC_out_ag(T55, T50)) → pD_out_gaag(T51, T54, T55, T50)
U5_gaa(T50, T51, X108, pD_out_gaag(T51, X108, X107, T50)) → search_treeB_out_gaa(tree(T50, T51, void), X108, T50)
U2_gaag(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, lessC_in_gg(T17, T21))
lessC_in_gg(0, s(T87)) → lessC_out_gg(0, s(T87))
lessC_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, lessC_in_gg(T92, T93))
U7_gg(T92, T93, lessC_out_gg(T92, T93)) → lessC_out_gg(s(T92), s(T93))
U3_gaag(T18, T21, T22, T17, lessC_out_gg(T17, T21)) → pA_out_gaag(T18, T21, T22, T17)
U4_gaa(T38, T39, X83, pA_out_gaag(T39, X82, X83, T38)) → search_treeB_out_gaa(tree(T38, void, T39), T38, X83)
U1_gaag(T18, X50, X51, T17, search_treeB_out_gaa(T18, X50, X51)) → pA_out_gaag(T18, X50, X51, T17)
U15_g(T17, T18, pA_out_gaag(T18, X50, X51, T17)) → search_treeF_out_g(tree(T17, void, T18))
search_treeF_in_g(tree(T104, T105, void)) → U16_g(T104, T105, pD_in_gaag(T105, X187, X186, T104))
U16_g(T104, T105, pD_out_gaag(T105, X187, X186, T104)) → search_treeF_out_g(tree(T104, T105, void))
search_treeF_in_g(tree(T114, T115, T116)) → U17_g(T114, T115, T116, pE_in_gaaggaa(T115, X213, X211, T114, T116, X212, X214))
U17_g(T114, T115, T116, pE_out_gaaggaa(T115, X213, X211, T114, T116, X212, X214)) → search_treeF_out_g(tree(T114, T115, T116))

The argument filtering Pi contains the following mapping:
search_treeF_in_g(x1)  =  search_treeF_in_g(x1)
void  =  void
search_treeF_out_g(x1)  =  search_treeF_out_g
tree(x1, x2, x3)  =  tree(x1, x2, x3)
U15_g(x1, x2, x3)  =  U15_g(x3)
pA_in_gaag(x1, x2, x3, x4)  =  pA_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_treeB_in_gaa(x1, x2, x3)  =  search_treeB_in_gaa(x1)
search_treeB_out_gaa(x1, x2, x3)  =  search_treeB_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
pD_in_gaag(x1, x2, x3, x4)  =  pD_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
pE_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
pE_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
lessC_in_gg(x1, x2)  =  lessC_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
lessC_out_gg(x1, x2)  =  lessC_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
pA_out_gaag(x1, x2, x3, x4)  =  pA_out_gaag(x2)
lessC_in_ag(x1, x2)  =  lessC_in_ag(x2)
lessC_out_ag(x1, x2)  =  lessC_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
pD_out_gaag(x1, x2, x3, x4)  =  pD_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
U16_g(x1, x2, x3)  =  U16_g(x3)
U17_g(x1, x2, x3, x4)  =  U17_g(x4)
PA_IN_GAAG(x1, x2, x3, x4)  =  PA_IN_GAAG(x1, x4)
SEARCH_TREEB_IN_GAA(x1, x2, x3)  =  SEARCH_TREEB_IN_GAA(x1)
PD_IN_GAAG(x1, x2, x3, x4)  =  PD_IN_GAAG(x1, x4)
PE_IN_GAAGGAA(x1, x2, x3, x4, x5, x6, x7)  =  PE_IN_GAAGGAA(x1, x4, x5)
U12_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_GAAGGAA(x4, x5, x8)
U13_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_GAAGGAA(x2, x4, x5, x8)

We have to consider all (P,R,Pi)-chains

(24) UsableRulesProof (EQUIVALENT transformation)

For (infinitary) constructor rewriting [LOPSTR] we can delete all non-usable rules from R.

(25) Obligation:

Pi DP problem:
The TRS P consists of the following rules:

PA_IN_GAAG(T18, X50, X51, T17) → SEARCH_TREEB_IN_GAA(T18, X50, X51)
SEARCH_TREEB_IN_GAA(tree(T38, void, T39), T38, X83) → PA_IN_GAAG(T39, X82, X83, T38)
SEARCH_TREEB_IN_GAA(tree(T50, T51, void), X108, T50) → PD_IN_GAAG(T51, X108, X107, T50)
PD_IN_GAAG(T51, X108, X107, T50) → SEARCH_TREEB_IN_GAA(T51, X108, X107)
SEARCH_TREEB_IN_GAA(tree(T66, T67, T68), X138, X139) → PE_IN_GAAGGAA(T67, X138, X136, T66, T68, X137, X139)
PE_IN_GAAGGAA(T67, X138, X136, T66, T68, X137, X139) → SEARCH_TREEB_IN_GAA(T67, X138, X136)
PE_IN_GAAGGAA(T67, T71, T72, T66, T68, X137, X139) → U12_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U12_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
U13_GAAGGAA(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → PA_IN_GAAG(T68, X137, X139, T66)

The TRS R consists of the following rules:

search_treeB_in_gaa(tree(T29, void, void), T29, T29) → search_treeB_out_gaa(tree(T29, void, void), T29, T29)
search_treeB_in_gaa(tree(T38, void, T39), T38, X83) → U4_gaa(T38, T39, X83, pA_in_gaag(T39, X82, X83, T38))
search_treeB_in_gaa(tree(T50, T51, void), X108, T50) → U5_gaa(T50, T51, X108, pD_in_gaag(T51, X108, X107, T50))
search_treeB_in_gaa(tree(T66, T67, T68), X138, X139) → U6_gaa(T66, T67, T68, X138, X139, pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139))
lessC_in_ag(0, s(T87)) → lessC_out_ag(0, s(T87))
lessC_in_ag(s(T92), s(T93)) → U7_ag(T92, T93, lessC_in_ag(T92, T93))
U4_gaa(T38, T39, X83, pA_out_gaag(T39, X82, X83, T38)) → search_treeB_out_gaa(tree(T38, void, T39), T38, X83)
U5_gaa(T50, T51, X108, pD_out_gaag(T51, X108, X107, T50)) → search_treeB_out_gaa(tree(T50, T51, void), X108, T50)
U6_gaa(T66, T67, T68, X138, X139, pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)) → search_treeB_out_gaa(tree(T66, T67, T68), X138, X139)
U7_ag(T92, T93, lessC_out_ag(T92, T93)) → lessC_out_ag(s(T92), s(T93))
pA_in_gaag(T18, X50, X51, T17) → U1_gaag(T18, X50, X51, T17, search_treeB_in_gaa(T18, X50, X51))
pA_in_gaag(T18, T21, T22, T17) → U2_gaag(T18, T21, T22, T17, search_treeB_in_gaa(T18, T21, T22))
pD_in_gaag(T51, X108, X107, T50) → U8_gaag(T51, X108, X107, T50, search_treeB_in_gaa(T51, X108, X107))
pD_in_gaag(T51, T54, T55, T50) → U9_gaag(T51, T54, T55, T50, search_treeB_in_gaa(T51, T54, T55))
pE_in_gaaggaa(T67, X138, X136, T66, T68, X137, X139) → U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_in_gaa(T67, X138, X136))
pE_in_gaaggaa(T67, T71, T72, T66, T68, X137, X139) → U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_in_gaa(T67, T71, T72))
U1_gaag(T18, X50, X51, T17, search_treeB_out_gaa(T18, X50, X51)) → pA_out_gaag(T18, X50, X51, T17)
U2_gaag(T18, T21, T22, T17, search_treeB_out_gaa(T18, T21, T22)) → U3_gaag(T18, T21, T22, T17, lessC_in_gg(T17, T21))
U8_gaag(T51, X108, X107, T50, search_treeB_out_gaa(T51, X108, X107)) → pD_out_gaag(T51, X108, X107, T50)
U9_gaag(T51, T54, T55, T50, search_treeB_out_gaa(T51, T54, T55)) → U10_gaag(T51, T54, T55, T50, lessC_in_ag(T55, T50))
U11_gaaggaa(T67, X138, X136, T66, T68, X137, X139, search_treeB_out_gaa(T67, X138, X136)) → pE_out_gaaggaa(T67, X138, X136, T66, T68, X137, X139)
U12_gaaggaa(T67, T71, T72, T66, T68, X137, X139, search_treeB_out_gaa(T67, T71, T72)) → U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_in_ag(T72, T66))
U3_gaag(T18, T21, T22, T17, lessC_out_gg(T17, T21)) → pA_out_gaag(T18, T21, T22, T17)
U10_gaag(T51, T54, T55, T50, lessC_out_ag(T55, T50)) → pD_out_gaag(T51, T54, T55, T50)
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U13_gaaggaa(T67, T71, T72, T66, T68, X137, X139, lessC_out_ag(T72, T66)) → U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_in_gaag(T68, X137, X139, T66))
lessC_in_gg(0, s(T87)) → lessC_out_gg(0, s(T87))
lessC_in_gg(s(T92), s(T93)) → U7_gg(T92, T93, lessC_in_gg(T92, T93))
U14_gaaggaa(T67, T71, T72, T66, T68, X137, X139, pA_out_gaag(T68, X137, X139, T66)) → pE_out_gaaggaa(T67, T71, T72, T66, T68, X137, X139)
U7_gg(T92, T93, lessC_out_gg(T92, T93)) → lessC_out_gg(s(T92), s(T93))

The argument filtering Pi contains the following mapping:
void  =  void
tree(x1, x2, x3)  =  tree(x1, x2, x3)
pA_in_gaag(x1, x2, x3, x4)  =  pA_in_gaag(x1, x4)
U1_gaag(x1, x2, x3, x4, x5)  =  U1_gaag(x5)
search_treeB_in_gaa(x1, x2, x3)  =  search_treeB_in_gaa(x1)
search_treeB_out_gaa(x1, x2, x3)  =  search_treeB_out_gaa(x2)
U4_gaa(x1, x2, x3, x4)  =  U4_gaa(x1, x4)
U2_gaag(x1, x2, x3, x4, x5)  =  U2_gaag(x4, x5)
U5_gaa(x1, x2, x3, x4)  =  U5_gaa(x4)
pD_in_gaag(x1, x2, x3, x4)  =  pD_in_gaag(x1, x4)
U8_gaag(x1, x2, x3, x4, x5)  =  U8_gaag(x5)
U6_gaa(x1, x2, x3, x4, x5, x6)  =  U6_gaa(x6)
pE_in_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_in_gaaggaa(x1, x4, x5)
U11_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U11_gaaggaa(x8)
pE_out_gaaggaa(x1, x2, x3, x4, x5, x6, x7)  =  pE_out_gaaggaa(x2)
U12_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_gaaggaa(x4, x5, x8)
U13_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_gaaggaa(x2, x4, x5, x8)
lessC_in_gg(x1, x2)  =  lessC_in_gg(x1, x2)
0  =  0
s(x1)  =  s(x1)
lessC_out_gg(x1, x2)  =  lessC_out_gg
U7_gg(x1, x2, x3)  =  U7_gg(x3)
U14_gaaggaa(x1, x2, x3, x4, x5, x6, x7, x8)  =  U14_gaaggaa(x2, x8)
pA_out_gaag(x1, x2, x3, x4)  =  pA_out_gaag(x2)
lessC_in_ag(x1, x2)  =  lessC_in_ag(x2)
lessC_out_ag(x1, x2)  =  lessC_out_ag(x1)
U7_ag(x1, x2, x3)  =  U7_ag(x3)
pD_out_gaag(x1, x2, x3, x4)  =  pD_out_gaag(x2)
U9_gaag(x1, x2, x3, x4, x5)  =  U9_gaag(x4, x5)
U10_gaag(x1, x2, x3, x4, x5)  =  U10_gaag(x2, x5)
U3_gaag(x1, x2, x3, x4, x5)  =  U3_gaag(x2, x5)
PA_IN_GAAG(x1, x2, x3, x4)  =  PA_IN_GAAG(x1, x4)
SEARCH_TREEB_IN_GAA(x1, x2, x3)  =  SEARCH_TREEB_IN_GAA(x1)
PD_IN_GAAG(x1, x2, x3, x4)  =  PD_IN_GAAG(x1, x4)
PE_IN_GAAGGAA(x1, x2, x3, x4, x5, x6, x7)  =  PE_IN_GAAGGAA(x1, x4, x5)
U12_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U12_GAAGGAA(x4, x5, x8)
U13_GAAGGAA(x1, x2, x3, x4, x5, x6, x7, x8)  =  U13_GAAGGAA(x2, x4, x5, x8)

We have to consider all (P,R,Pi)-chains

(26) PiDPToQDPProof (SOUND transformation)

Transforming (infinitary) constructor rewriting Pi-DP problem [LOPSTR] into ordinary QDP problem [LPAR04] by application of Pi.

(27) Obligation:

Q DP problem:
The TRS P consists of the following rules:

PA_IN_GAAG(T18, T17) → SEARCH_TREEB_IN_GAA(T18)
SEARCH_TREEB_IN_GAA(tree(T38, void, T39)) → PA_IN_GAAG(T39, T38)
SEARCH_TREEB_IN_GAA(tree(T50, T51, void)) → PD_IN_GAAG(T51, T50)
PD_IN_GAAG(T51, T50) → SEARCH_TREEB_IN_GAA(T51)
SEARCH_TREEB_IN_GAA(tree(T66, T67, T68)) → PE_IN_GAAGGAA(T67, T66, T68)
PE_IN_GAAGGAA(T67, T66, T68) → SEARCH_TREEB_IN_GAA(T67)
PE_IN_GAAGGAA(T67, T66, T68) → U12_GAAGGAA(T66, T68, search_treeB_in_gaa(T67))
U12_GAAGGAA(T66, T68, search_treeB_out_gaa(T71)) → U13_GAAGGAA(T71, T66, T68, lessC_in_ag(T66))
U13_GAAGGAA(T71, T66, T68, lessC_out_ag(T72)) → PA_IN_GAAG(T68, T66)

The TRS R consists of the following rules:

search_treeB_in_gaa(tree(T29, void, void)) → search_treeB_out_gaa(T29)
search_treeB_in_gaa(tree(T38, void, T39)) → U4_gaa(T38, pA_in_gaag(T39, T38))
search_treeB_in_gaa(tree(T50, T51, void)) → U5_gaa(pD_in_gaag(T51, T50))
search_treeB_in_gaa(tree(T66, T67, T68)) → U6_gaa(pE_in_gaaggaa(T67, T66, T68))
lessC_in_ag(s(T87)) → lessC_out_ag(0)
lessC_in_ag(s(T93)) → U7_ag(lessC_in_ag(T93))
U4_gaa(T38, pA_out_gaag(X82)) → search_treeB_out_gaa(T38)
U5_gaa(pD_out_gaag(X108)) → search_treeB_out_gaa(X108)
U6_gaa(pE_out_gaaggaa(X138)) → search_treeB_out_gaa(X138)
U7_ag(lessC_out_ag(T92)) → lessC_out_ag(s(T92))
pA_in_gaag(T18, T17) → U1_gaag(search_treeB_in_gaa(T18))
pA_in_gaag(T18, T17) → U2_gaag(T17, search_treeB_in_gaa(T18))
pD_in_gaag(T51, T50) → U8_gaag(search_treeB_in_gaa(T51))
pD_in_gaag(T51, T50) → U9_gaag(T50, search_treeB_in_gaa(T51))
pE_in_gaaggaa(T67, T66, T68) → U11_gaaggaa(search_treeB_in_gaa(T67))
pE_in_gaaggaa(T67, T66, T68) → U12_gaaggaa(T66, T68, search_treeB_in_gaa(T67))
U1_gaag(search_treeB_out_gaa(X50)) → pA_out_gaag(X50)
U2_gaag(T17, search_treeB_out_gaa(T21)) → U3_gaag(T21, lessC_in_gg(T17, T21))
U8_gaag(search_treeB_out_gaa(X108)) → pD_out_gaag(X108)
U9_gaag(T50, search_treeB_out_gaa(T54)) → U10_gaag(T54, lessC_in_ag(T50))
U11_gaaggaa(search_treeB_out_gaa(X138)) → pE_out_gaaggaa(X138)
U12_gaaggaa(T66, T68, search_treeB_out_gaa(T71)) → U13_gaaggaa(T71, T66, T68, lessC_in_ag(T66))
U3_gaag(T21, lessC_out_gg) → pA_out_gaag(T21)
U10_gaag(T54, lessC_out_ag(T55)) → pD_out_gaag(T54)
U13_gaaggaa(T71, T66, T68, lessC_out_ag(T72)) → pE_out_gaaggaa(T71)
U13_gaaggaa(T71, T66, T68, lessC_out_ag(T72)) → U14_gaaggaa(T71, pA_in_gaag(T68, T66))
lessC_in_gg(0, s(T87)) → lessC_out_gg
lessC_in_gg(s(T92), s(T93)) → U7_gg(lessC_in_gg(T92, T93))
U14_gaaggaa(T71, pA_out_gaag(X137)) → pE_out_gaaggaa(T71)
U7_gg(lessC_out_gg) → lessC_out_gg

The set Q consists of the following terms:

search_treeB_in_gaa(x0)
lessC_in_ag(x0)
U4_gaa(x0, x1)
U5_gaa(x0)
U6_gaa(x0)
U7_ag(x0)
pA_in_gaag(x0, x1)
pD_in_gaag(x0, x1)
pE_in_gaaggaa(x0, x1, x2)
U1_gaag(x0)
U2_gaag(x0, x1)
U8_gaag(x0)
U9_gaag(x0, x1)
U11_gaaggaa(x0)
U12_gaaggaa(x0, x1, x2)
U3_gaag(x0, x1)
U10_gaag(x0, x1)
U13_gaaggaa(x0, x1, x2, x3)
lessC_in_gg(x0, x1)
U14_gaaggaa(x0, x1)
U7_gg(x0)

We have to consider all (P,Q,R)-chains.

(28) QDPSizeChangeProof (EQUIVALENT transformation)

By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:

  • SEARCH_TREEB_IN_GAA(tree(T38, void, T39)) → PA_IN_GAAG(T39, T38)
    The graph contains the following edges 1 > 1, 1 > 2

  • U13_GAAGGAA(T71, T66, T68, lessC_out_ag(T72)) → PA_IN_GAAG(T68, T66)
    The graph contains the following edges 3 >= 1, 2 >= 2

  • PA_IN_GAAG(T18, T17) → SEARCH_TREEB_IN_GAA(T18)
    The graph contains the following edges 1 >= 1

  • PD_IN_GAAG(T51, T50) → SEARCH_TREEB_IN_GAA(T51)
    The graph contains the following edges 1 >= 1

  • PE_IN_GAAGGAA(T67, T66, T68) → SEARCH_TREEB_IN_GAA(T67)
    The graph contains the following edges 1 >= 1

  • SEARCH_TREEB_IN_GAA(tree(T50, T51, void)) → PD_IN_GAAG(T51, T50)
    The graph contains the following edges 1 > 1, 1 > 2

  • SEARCH_TREEB_IN_GAA(tree(T66, T67, T68)) → PE_IN_GAAGGAA(T67, T66, T68)
    The graph contains the following edges 1 > 1, 1 > 2, 1 > 3

  • PE_IN_GAAGGAA(T67, T66, T68) → U12_GAAGGAA(T66, T68, search_treeB_in_gaa(T67))
    The graph contains the following edges 2 >= 1, 3 >= 2

  • U12_GAAGGAA(T66, T68, search_treeB_out_gaa(T71)) → U13_GAAGGAA(T71, T66, T68, lessC_in_ag(T66))
    The graph contains the following edges 3 > 1, 1 >= 2, 2 >= 3

(29) YES